#ifndef GB_DEVICE_H
#define GB_DEVICE_H

#include <stdbool.h>
#include <stddef.h>
#include "GBCart.h"

typedef struct GBDevice GBDevice;

GBDevice * GBDeviceCreate();
void GBDeviceDestroy(GBDevice *);

GBCart * GBDeviceLoadCartWithPath(GBDevice *, char *);
void GBDeviceUnloadCart(GBDevice *);
bool GBDeviceSaveStateWithPath(GBDevice *, char *);
bool GBDeviceLoadStateWithPath(GBDevice *, char *);

#endif
